People are good at creative tasks like reasoning, deduction, and complex problem-solving. Compared to computers, we’re terrible at mundane, repetitive tasks, such as clicking “Next” on an installation wizard or preparing an application build for deployment. Software delivery benefits from automation for the same reasons car manufacturing does. Computers and robots are very good at performing the same task, precisely the same way, over and over for days, weeks, and years at a time. It’s about time the IT industry applied that to automating software delivery.
Software delivery without DevOps is fraught with challenges. Developers build and deploy software from their workstations. Due to configuration differences, applications that function properly on one developer workstation fail on other workstations and servers. Deployment of software is a manual process of gathering files, copying them by hand to servers, and running tests. Fixes are performed by reaching out to those servers and making changes there, rather than fixing defects in a controlled environment and then deploying those changes in a consistent way. Manual operation of the software delivery lifecycle is slow, prone to error, and risky.
Development, testing, deployment, and all other software delivery tasks can and must be automated to ensure quality and reliability. Both commercial and open-source tools are available to automate every step of a delivery pipeline.
This course will provide an introduction to three of the tools that have made the greatest impact on DevOps software delivery automation.
Docker
Docker is the open-source container system that’s changing the way applications are developed and deployed.
Git#
Git is the de facto standard for version control in IT organizations of every size and industry.
Jenkins#
Jenkins is the most popular continuous integration tool available, with a vibrant ecosystem of plug-ins that enable it to automate almost any build/test pipeline.
Each one of these tools is fully open-source, which means individuals and enterprises can use them at no cost. Enterprise licenses and support are also available for each of these tools from a variety of third-party vendors.
DevOps Pillars
Quiz Yourself on DevOps